﻿using MediatR;
using Microsoft.EntityFrameworkCore.Metadata.Internal;
using S.Common.Enums.Organization;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;

namespace S.Authorization.API.Application.Command.OrganizationCommand
{
    public class SheepFromCommand:IRequest<bool>
    {
        /// <summary>
        /// 羊场编码
        /// </summary>
        public string? SheepFarmSnowFlake { get; set; }
        /// <summary>
        /// 羊场全称
        /// </summary>
        public string? SheepFarmsFullName { get; set; }
        /// <summary>
        /// 羊场简称
        /// </summary>
        public string? SheepFarmsName { get; set; }
        /// <summary>
        /// 羊场规模（下拉框）
        /// </summary>
        public SheepFarmSize SheepFarmsScale { get; set; }
        /// <summary>
        /// 详细地址
        /// </summary>
        public string? FullAddress { get; set; }
        /// <summary>
        /// 建账日期
        /// </summary>
        public DateTime DateOfEstablishment { get; set; }
        /// <summary>
        /// 负责人
        /// </summary>
        public string? Responsible { get; set; }
        /// <summary>
        /// 创建人
        /// </summary>
        public string? CreateBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreateTime { get; set; }
        /// <summary>
        /// 管理部门id
        /// </summary>
        public int DepartMentId { get; set; }

        /// <summary>
        /// 管理部门名称
        /// </summary>

        public string? IndustryTitle { get; set; }
        /// <summary>
        /// 状态(是否启用)
        /// </summary>
        public bool Sate { get; set; }
        /// <summary>
        /// 省
        /// </summary>
        public int Province { get; set; }
        /// <summary>
        /// 市
        /// </summary>
        public int City { get; set; }
        /// <summary>
        /// 区
        /// </summary>
        public int Area { get; set; }
    }
    /// <summary>
    /// 删除
    /// </summary>
    public class SheepFromDeleteCommand:IRequest<int>
    {
        public int SheepFarmsId { get; set; }
    }
    /// <summary>
    /// 修改
    /// </summary>
    public class SheepFromUpdateCommand : IRequest<int>
    {
        public int SheepFarmsId { get; set; }
        /// <summary>
        /// 羊场编码
        /// </summary>
        public string? SheepFarmSnowFlake { get; set; }
        /// <summary>
        /// 羊场全称
        /// </summary>
        public string? SheepFarmsFullName { get; set; }
        /// <summary>
        /// 羊场简称
        /// </summary>

        public string? SheepFarmsName { get; set; }

        /// <summary>
        /// 羊场规模（下拉框）
        /// </summary>
        public int SheepFarmsScale { get; set; }

        /// <summary>
        /// 建账日期
        /// </summary>
        public DateTime DateOfEstablishment { get; set; }

        /// <summary>
        /// 负责人
        /// </summary>
        public string? Responsible { get; set; }

        /// <summary>
        /// 详细地址
        /// </summary>
        public string? FullAddress { get; set; }

        /// <summary>
        /// 状态(是否启用)
        /// </summary>
        public bool Sate { get; set; }
        /// <summary>
        /// 修改人
        /// </summary>
        public string? UpdateBy { get; set; }

        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? UpdateTime { get; set; }

        /// <summary>
        /// 管理部门id
        /// </summary>
        public int DepartMentId { get; set; }

        /// <summary>
        /// 管理部门名称
        /// </summary>
        public string? IndustryTitle { get; set; }
        /// <summary>
        /// 省
        /// </summary>
        public int Province { get; set; }
        /// <summary>
        /// 市
        /// </summary>
        public int City { get; set; }
        /// <summary>
        /// 区
        /// </summary>
        public int Area { get; set; }
    }

    /// <summary>
    /// 批量删除
    /// </summary>
    public class SheepFromDeleteMoreCommand : IRequest<string>
    {
        public string? Ids { get; set; }
    }

}
